import pprint
import pymysql
from pymysql import cursors


# 可不使用models直接调用原生sql写法

# 链接数据库
def conn_mysql():
    return pymysql.connect(
        host="127.0.0.1",
        port=3306,
        user="root",
        password="",
        database="flask_demo",
        charset="utf8"
    )


# 查询数据
def query_data(sql):
    conn = conn_mysql()
    try:
        # 创建游标对象
        cursor = conn.cursor(pymysql.cursors.DictCursor)  # 返回数据是字典形式
        cursor.execute(sql)
        return cursor.fetchall()
    finally:
        # 而finally子句无论是否发生异常，都会在结束try块前执行
        conn.close()


# 更新数据
def insert_update_data(sql):
    conn = conn_mysql()
    try:
        cursor = conn.cursor()
        cursor.execute(sql)
        conn.commit()  # 提交
    finally:
        conn.close()
